.form {
  &__group {
    &:not(:last-child) {
      margin-bottom: 2rem;
    }
  }
  &__input {
    font-family: inherit;
    color: inherit;
    font-size: 1.5rem;
    padding: 1.5rem 2rem;
    border-radius: 2px;
    background-color: rgba($color-white, 0.5);
    border: none;
    border-bottom: 3px solid transparent;
    width: 90%;
    display: block;
    transition: all 0.3s;

    &:focus {
      outline: none;
      box-shadow: 0 1rem 2rem rgba($color-black, 0.1);
      border-bottom: 3px solid $color-primay;

      // 无效输入时的样式
      &:invalid {
        border-bottom: 3px solid $color-secondary-dark;
      }
    }

    &::placeholder {
      color: $color-gray-dark-2;
    }
  }

  &__label {
    font-size: 1.2rem;
    font-weight: 700;
    margin-left: 2rem;
    margin-top: 0.7rem;
    transition: all 0.4s;
    display: block;
  }
  //   选择第一个兄弟元素 form__label
  &__input:placeholder-shown + &__label {
    visibility: hidden;
    opacity: 0;
    transform: translateY(-4rem);
  }

  &__radio-group {
    width: 49%;
    display: inline-block;
  }

  &__radio-label {
    font-size: $default-font-size;
    cursor: pointer;
    position: relative;
    padding-left: 4.5rem;
  }

  &__radio-button {
    height: 3rem;
    width: 3rem;
    border: 5px solid $color-primay;
    border-radius: 50%;
    display: inline-block;
    position: absolute;
    left: 0;
    top: -0.4rem;

    &::after {
      content: "";
      display: inline-block;
      height: 1.3rem;
      width: 1.3rem;
      border-radius: 50%;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      background-color: $color-primay;
      opacity: 0;
      transition: opacity 0.2s;
    }
  }

  &__radio-input {
    display: none;
  }
  // &__radio-input:checked + &__radio-label > &__radio-button::after {
  &__radio-input:checked ~ &__radio-label &__radio-button::after {
    opacity: 1;
  }
}
